A non-volatile memory, such as flash memory and Electrically Erasable Programmable Read-Only Memory (EEPROM), may be used to provide permanent data storage. The data state of non-volatile memory cells therein may be retained even when the power supply voltage is removed. In general, the non-volatile memory may have a smaller semiconductor (e.g., Silicon (Si)) footprint and a lower cost-per-bit than other semiconductor memories.
A volatile memory, such as Static Random Access Memory (SRAM) and Dynamic Random Access Memory (DRAM), may have a greater write speed but may not retain data when the power supply voltage is removed. The aforementioned characteristics of the non-volatile memory and the volatile memory may be utilized to store different types of data in a computing system. For example, the non-volatile memory may be used to store data that does not require frequent modification (e.g., program codes, account information, security keys). The volatile memory may be used to store temporary data, the fast access of which is critical to the performance of the computing system.
A memory circuit including both the volatile memory and the non-volatile memory may advantageously utilize the characteristics thereof. However, changes to the physical architecture of the memory circuit may be required to add one form of memory (e.g., non-volatile memory) in addition to the other form (e.g., volatile memory) already existing therein, which may result in increased complexity and/or costs associated therewith.